package com.lt73.ext.entity;

import com.tangzc.mpe.actable.annotation.*;
import com.tangzc.mpe.actable.annotation.constants.MySqlTypeConstant;
import lombok.Data;

/**
 * @Author: hanxiao
 * @Date: 2022/4/15 10:35
 */
@Data
// @Table标记的可被识别为需要自动创建表的Entity
@Table(comment = "用户")
public class User {

    // 自动识别id属性名为主键
    // @IsAutoIncrement声明为自增主键，什么都不声明的话，默认为雪花算法的唯一主键（MP的自带功能），推荐默认便于后期的数据分布式存储等处理。
    @IsAutoIncrement
    // 字段注释、类型、长度。@Column的所有属性均有独立的注解对应，具体请参照后面的注解介绍
    @Column(comment = "主键", type = MySqlTypeConstant.BIGINT, length = 32)
    private String id;

    // 索引
    @Index
    // 非空
    @IsNotNull
    @ColumnComment("名字")
    private String name;

    // 唯一索引
    @Unique
    // 非空
    @IsNotNull
    @ColumnComment("手机号")
    private String phone;

}